1. Field of the Invention
The present innovation relates generally to artificial neural networks and more particularly in one exemplary aspect to computer apparatus and methods for efficient feedback implementation in a pulse-code neural network processing sensory input.
2. Description of Related Art
Artificial spiking neural networks are frequently used to gain an understanding of biological neural networks, and for solving artificial intelligence problems. These networks typically employ a pulse-coded mechanism, which encodes information using timing of the pulses. Such pulses (also referred to as “spikes” or ‘impulses’) are short-lasting discrete temporal events, typically on the order of 1-2 milliseconds (ms). Several exemplary embodiments of such encoding are described in a commonly owned and co-pending U.S. patent application Ser. No. 13/152,084 entitled APPARATUS AND METHODS FOR PULSE-CODE INVARIANT OBJECT RECOGNITION”, filed Jun. 2, 2011, and U.S. patent application Ser. No. 13/152,119, Jun. 2, 2011, entitled “SENSORY INPUT PROCESSING APPARATUS AND METHODS”, each incorporated herein by reference in its entirety.
A typical artificial spiking neural network, such as the network 100 shown for example in FIG. 1, comprises a plurality of units (or nodes) 102, which correspond to neurons in a biological neural network. Any given unit 102 may be connected to many other units via connections 104, also referred to as communications channels, or synaptic connections. The units providing inputs to any given unit (e.g., the unit 102_2 in FIG. 1) are commonly referred to as the pre-synaptic units (e.g., the units 102_1 in FIG. 1), while the unit receiving the inputs (e.g., the unit 102_2 in FIG. 1) is referred to as the post-synaptic unit. Furthermore, the post-synaptic unit of one unit layer (e.g. the unit 102_2 in FIG. 1) can act as the pre-synaptic unit for the subsequent upper layer of units (e.g., the units 102_3 in FIG. 1).
Each of the unit-to-unit connections is assigned, inter alia, a connection efficacy, which in general refers to a magnitude and/or probability of input spike influence on neuronal response (i.e., output spike generation or firing), and may comprise, for example a parameter—synaptic weight—by which one or more state variables of post synaptic unit are changed). During operation of the pulse-code network (e.g., the network 100), synaptic weights are dynamically adjusted using what is referred to as the spike-timing dependent plasticity (STDP) in order to implement, among other things, network learning.
It is known from biology that networks in the brain exhibit significant feedback connectivity, which enables the higher processing areas to emphasize (or amplify) responses to features of interest in the pulse activity of lower processing areas. This process is typically referred to as “top-down attention modulation”. A neural network operated using feedback would enhance some features relative to other features, thereby allowing for better allocation of computational resources of the upper hierarchical levels of the network. Feedback connections also enable the multistage spiking network to keep a stable representation of the features of the input and encode different aspects of the input in different stages of processing (e.g. the spatial position of an object in visual processing might be encoded in lower stages of processing, whereas higher order features or the identity of an object can be represented in the higher stages of processing). Feedback from higher levels into lower levels of the network hierarchy (e.g., from the units 102_1 to units 102_2 of FIG. 1) is beneficial for maintaining the integrity of such representation, since different aspects of the sensory input are often encoded by different parts of the network. Enhancing integrity of the pulse-coded representation also allows for error correction and filling information gaps based on the feedback context from the higher areas (e.g. contour or color filling).
While most existing implementations of sensory processing (e.g., computer vision) systems are purely feed-forward (see, for example, Thomas S. and Riesenhuber, M, 2004, Realistic Modeling of Simple and Complex Cell Tuning in the HMAX Model, and Implications for Invariant Object Recognition in Cortex, AI Memo 2004-017 July 2004, incorporated herein by reference in its entirety), which limits their processing capability, in some implementations that use simplified rate model neurons comprise feedback connections (see, for example, Revow M., Williams C., and Hinton, G. E., 1996, Using Generative Models for Handwritten Digit Recognition, IEEE Trans. on Pattern Analysis and Machine Intelligence, 18, No. 6, June 1996, incorporated herein by reference in its entirety), the problem of incorporating functional feedback in a spiking neural network processing of sensory input has not been solved.
Referring now to FIG. 2, the process of neuronal feedback in a spiking neural network 200 is illustrated. The post-synaptic neuron 202 receives inputs via synaptic connections 204 that correspond to a certain feed-forward input stimulus (e.g., output of simulated retinal ganglion cells in a visual spiking neural network). In addition to the stimuli signals 204, the neuron 202 receives feedback signals via the feedback connections 206. Typically, the feedback signal received by the post-synaptic neuron 202 is associated with the same context (as the feed-forward input stimulus signals), and is configured to increase probability of generating a post-synaptic spike (firing) by the neuron 202.
Such configuration, typically referred to as the positive feedback loop 220, is illustrated in more detail in FIG. 2A. Every time the neuron 202 generates a spike (fires) for a particular context C (e.g., a vertical bar in a visual field of the corresponding retinal ganglion cells), its output is transmitted over the synapse 226 to an adjacent neuron 222. The adjacent neuron 222 may comprise (with respect to the neuron 202) either a downstream neuron, or a lateral neuron, with respect to the neuron 202. Similarly, when the adjacent neuron 222 generates a spike (fires) a later time (but for the same context C), its output is provided (fed back) to the post-synaptic neuron 202 via the feedback synapse 206. As a result of the post-synaptic firing by the adjacent neuron 222, the synaptic weight 228 of the synapse 226 is increased (the synapse is potentiated). When the post-synaptic neuron 202 subsequently fires (for the same context C), the synaptic weight 210 of the synapse 206 is increased (the synapse is potentiated), thereby creating the positive feedback loop 220.
Such positive feedback configurations are invariably unstable, and result in a ‘runaway’ potentiation of synapses (e.g., the 210, 228 in FIG. 2A). As a result, presently available spiking neural networks that employ positive feedback are often unstable, characterized by uncontrolled spiking, seizures, and/or creation of hallucinatory responses.
Accordingly, there is a salient need for, inter alia, a feedback connection implementation that enables stable network operation, and enhances detection capabilities of the network, while eliminating runaway positive feedback loops.